﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DrCarDrive.Util
{
    class GUIDGenerator
    {
        private const string TBL_CAR_KEY = "1001";
        private const string TBL_DRIVE_KEY = "2001";
        private const string TBL_DRIVE_STAFF_KEY = "3001";
        private const string TBL_EXPENSES_DESC_KEY = "4001";
        private const string TBL_EXPENSES_KEY = "5001";
        private const string TBL_FUEL_KEY = "6001";
        private const string TBL_ISSUE_MEDICINE_KEY = "7001";
        private const string TBL_MEDICINE_KEY = "8001";
        private const string TBL_PLACES_KEY = "9001";
        private const string TBL_STAFF_KEY = "1101";
        private const string TBL_VILLAGE_KEY = "1201";
        private const string TBL_WEATHER_KEY = "1301";

        private const string CLS_CAR_KEY = "0101";
        private const string CLS_DRIVE_KEY = "0201";
        private const string CLS_DRIVE_STAFF_KEY = "0301";
        private const string CLS_EXPENSES_DESC_KEY = "0401";
        private const string CLS_EXPENSES_KEY = "0501";
        private const string CLS_FUEL_KEY = "0601";
        private const string CLS_ISSUE_MEDICINE_KEY = "0701";
        private const string CLS_MEDICINE_KEY = "0801";
        private const string CLS_PLACES_KEY = "0901";
        private const string CLS_STAFF_KEY = "0111";
        private const string CLS_VILLAGE_KEY = "0121";
        private const string CLS_WEATHER_KEY = "0131";

        public static string carKey() {
            return CLS_CAR_KEY + TBL_CAR_KEY + currentTimeStamp(); 
        }

        public static string driveKey()
        {
            return CLS_DRIVE_KEY + TBL_DRIVE_KEY + currentTimeStamp();
        }

        public static string driveStaffKey()
        {
            return CLS_DRIVE_STAFF_KEY + TBL_DRIVE_STAFF_KEY + currentTimeStamp();
        }

        public static string expensesDescKey()
        {
            return CLS_EXPENSES_DESC_KEY + TBL_EXPENSES_DESC_KEY + currentTimeStamp();
        }

        public static string expensesKey()
        {
            return CLS_EXPENSES_KEY + TBL_EXPENSES_KEY + currentTimeStamp();
        }

        public static string fuelKey()
        {
            return CLS_FUEL_KEY + TBL_FUEL_KEY + currentTimeStamp();
        }

        public static string issueMedicineKey()
        {
            return CLS_ISSUE_MEDICINE_KEY + TBL_ISSUE_MEDICINE_KEY + currentTimeStamp();
        }

        public static string medicineKey()
        {
            return CLS_MEDICINE_KEY + TBL_MEDICINE_KEY + currentTimeStamp();
        }

        public static string placesKey()
        {
            return CLS_PLACES_KEY + TBL_PLACES_KEY + currentTimeStamp();
        }

        public static string staffKey()
        {
            return CLS_STAFF_KEY + TBL_STAFF_KEY + currentTimeStamp();
        }

        public static string villageKey()
        {
            return CLS_VILLAGE_KEY + TBL_VILLAGE_KEY + currentTimeStamp();
        }

        public static string weatherKey()
        {
            return CLS_WEATHER_KEY + TBL_WEATHER_KEY + currentTimeStamp();
        }

        private static string currentTimeStamp()
        {
            return DateTime.Now.ToString("yyyyMMddHHmmssffff");
        }

    }
}
